﻿using System;
using System.Collections.Generic;

[assembly: CLSCompliant(true)]
namespace SimpleFS.Core
{
    public interface IFileSystemObject
    {
        string Name
        {
            get;
        }

        DateTime LastModifiedTime
        {
            get;
        }

        Dictionary<string, string> Attributes
        {
            get;
        }

        IDirectory ParentDirectory
        {
            get;
        }

        int Size
        {
            get;
        }

        void Copy(IFileSystemObject target);

        void Move(IFileSystemObject target);

        void Delete();

        bool Exists();

        void Rename(string newName);

        void Close();
    }
}
